Intelligent adaptative cruise control integrated engine control

ABSTRACT

A system comprises a computer having a processor and a memory, the memory storing instructions executable by the processor to monitor conditions of a roadway as a vehicle travels the roadway while an adaptive cruise control feature of the vehicle is active, identify an expected condition change based on the monitoring the conditions of the roadway, determine a preferred power state for an engine of the vehicle based on the expected condition change, determine that an engine power state transition is planned for the engine, the engine power state transition including transitioning the engine from a current power state to a planned power state, and resolve the engine power state transition based on the preferred power state.

BACKGROUND

Adaptive cruise control is a vehicle feature that, when engaged,controls vehicle propulsion power/acceleration in order to maintain aset speed when possible, while monitoring the road in front of thevehicle in order to detect other vehicles that may be present. When theadaptive cruise control feature detects the presence of a slower-movingvehicle in front of the controlled vehicle, it can reduce the speed ofthe controlled vehicle below the set speed in order to maintain aspecified minimum following distance. Subsequently, if the adaptivecruise control feature detects that the road in front of the vehicle hasbecome clear, it can cause the vehicle to accelerate back up to the setspeed.

A vehicle can include an electrical energy source (such as a battery)and an engine that can be stopped and started while the vehicle is inmotion. When the engine is stopped while the vehicle is in motion, sucha vehicle can operate in an “electric only” mode in which the electricalenergy source provides the power used for propulsion. The operationalstate of the engine can be controlled via stop (or “pull-down”) andstart (or “pull-up”) commands (e.g., issued by a controller) asappropriate as the power demands of the vehicle vary over time.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an example vehicle system.

FIG. 2 is a block diagram of an example server computer.

FIG. 3 is a diagram of an example traffic scene.

FIG. 4 is a block diagram of a first example process flow.

FIG. 5 is a block diagram of a second example process flow.

FIG. 6 is a block diagram of an example storage medium.

DETAILED DESCRIPTION

Disclosed herein are vehicle operation improvements according to whichchanging roadway conditions can be taken into account in order tointelligently evaluate prospective engine power state transitions at avehicle, typically in the context of an adaptive cruise control feature.As the vehicle travels along a roadway, it can analyze captured images,radar sensor data, and electronic horizon data to identify expectedcondition changes. Planned power state transitions can then be analyzedbased on the identified expected condition changes. When expectedcondition change(s) will render a planned power state transitionundesirable, the planned power state transition can be inhibited.

A system can comprise a computer having a processor and a memory, thememory storing instructions executable by the processor to monitorconditions of a roadway as a vehicle travels the roadway while anadaptive cruise control feature of the vehicle is active, identify anexpected condition change based on the monitoring the conditions of theroadway, determine a preferred power state for an engine of the vehiclebased on the expected condition change, determine that an engine powerstate transition is planned for the engine, the engine power statetransition including transitioning the engine from a current power stateto a planned power state, and resolve the engine power state transitionbased on the preferred power state.

The resolving the engine power state transition can comprise inhibitingthe engine power state transition when the current power state matchesthe preferred power state.

The resolving the engine power state transition can comprise executingthe engine power state transition when the current power state does notmatch the preferred power state and the planned power state matches thepreferred power state.

The expected condition change can correspond to an expected movement outof a travel lane of the vehicle by a target vehicle of the adaptivecruise control feature.

The expected condition change can correspond to an expected movementinto a travel lane of the vehicle by a target vehicle of the adaptivecruise control feature.

The expected condition change can correspond to a change in speed limit.

The expected condition change can correspond to a change in roadwaycurvature.

The engine power state transition can be a transition from an on stateto an off state.

The engine power state transition can be a transition from an off stateto an on state.

The memory can store instructions executable by the processor todetermine a preferred fuel flow state for the engine based on theexpected condition change and resolve a planned fuel flow statetransition based on the preferred fuel flow state.

A method can comprise monitoring conditions of a roadway as a vehicletravels the roadway while an adaptive cruise control feature of thevehicle is active, identifying an expected condition change based on themonitoring the conditions of the roadway, determining a preferred powerstate for an engine of the vehicle based on the expected conditionchange, determining that an engine power state transition is planned forthe engine, the engine power state transition including transitioningthe engine from a current power state to a planned power state, andresolving the engine power state transition based on the preferred powerstate.

The resolving the engine power state transition can comprise inhibitingthe engine power state transition when the current power state matchesthe preferred power state.

The resolving the engine power state transition can comprise executingthe engine power state transition when the current power state does notmatch the preferred power state and the planned power state matches thepreferred power state.

The expected condition change can correspond to an expected movement outof a travel lane of the vehicle by a target vehicle of the adaptivecruise control feature.

The expected condition change can correspond to an expected movementinto a travel lane of the vehicle by a target vehicle of the adaptivecruise control feature.

The expected condition change can correspond to a change in speed limit.

The expected condition change can correspond to a change in roadwaycurvature.

The engine power state transition can be a transition from an on stateto an off state.

The engine power state transition can be a transition from an off stateto an on state.

The method can comprise determining a preferred fuel flow state for theengine based on the expected condition change and resolve a planned fuelflow state transition based on the preferred fuel flow state.

FIG. 1 is a block diagram of an example vehicle system 100. The system100 includes a vehicle 105, which is a land vehicle such as a car,truck, etc. The vehicle 105 includes a computer 110, electronic controlunits (ECUs) 112, vehicle sensors 115, actuators 120 to actuate variousvehicle components 125, a communications module 130, and a vehiclenetwork 132. Communications module 130 allows vehicle 105 to communicatewith a server 145 via a network 135.

The computer 110 includes a processor and a memory. The memory includesone or more forms of computer-readable media, and stores instructionsexecutable by the processor for performing various operations, includingas disclosed herein. The processor can be implemented using any suitableprocessor or logic device, such as a complex instruction set computer(CISC) microprocessor, a reduced instruction set computing (RISC)microprocessor, a very long instruction word (VLIW) microprocessor, anx86 instruction set compatible processor, a processor implementing acombination of instruction sets, a multi-core processor, or any othersuitable microprocessor or central processing unit (CPU). The processoralso can be implemented as a dedicated processor, such as a controller,a microcontroller, an embedded processor, a chip multiprocessor (CMP), aco-processor, a graphics processor, a graphics processing unit (GPU), adigital signal processor (DSP), a network processor, a media processor,an input/output (I/O) processor, a media access control (MAC) processor,a radio baseband processor, an application specific integrated circuit(ASIC), a field programmable gate array (FPGA), a programmable logicdevice (PLD), and so forth. In some implementations, computer 110 caninclude multiple processors, each one of which can be implementedaccording to any of the examples above.

The computer 110 may operate vehicle 105 in an autonomous, asemi-autonomous mode, or a non-autonomous (manual) mode, i.e., cancontrol and/or monitor operation of the vehicle 105, includingcontrolling and/or monitoring components 125. For purposes of thisdisclosure, an autonomous mode is defined as one in which each ofvehicle propulsion, braking, and steering are controlled by the computer110; in a semi-autonomous mode the computer 110 controls one or two ofvehicle propulsion, braking, and steering; in a non-autonomous mode ahuman operator controls each of vehicle propulsion, braking, andsteering.

The computer 110 may include programming to operate one or more ofvehicle brakes, propulsion (e.g., control of acceleration in the vehicleby controlling one or more of an internal combustion engine, electricmotor, hybrid engine, etc.), steering, climate control, interior and/orexterior lights, etc., as well as to determine whether and when thecomputer 110, as opposed to a human operator, is to control suchoperations. Additionally, the computer 110 may be programmed todetermine whether and when a human operator is to control suchoperations.

The computer 110 may be communicatively coupled to, e.g., via vehiclenetwork 132 as described further below, one or more processors locatedin other device(s) included in the vehicle 105. Further, the computer110 may communicate, via communications module 130, with a navigationsystem that uses the Global Position System (GPS). As an example, thecomputer 110 may request and receive location data of the vehicle 105.The location data may be in a conventional format, e.g., geo-coordinates(latitudinal and longitudinal coordinates).

ECUs 112 (which can also be referred to as electronic control modules(ECMs) or simply as “control modules”) are computing devices thatmonitor and/or control various vehicle components 125 of vehicle 105.Examples of ECUs 112 can include an engine control module, atransmission control module, a powertrain control module, a brakecontrol module, a steering control module, and so forth. Any given ECU112 can include a processor and a memory. The memory can include one ormore forms of computer-readable media, and can store instructionsexecutable by the processor for performing various operations, includingas disclosed herein. The processor of any given ECU 112 can beimplemented using a general-purpose processor or a dedicated processoror processing circuitry, including any of the examples identified abovein reference to a processor included in computer 110.

In some implementations, the processor of a given ECU 112 can beimplemented using a microcontroller. In some implementations, theprocessor of a given ECU 112 can be implemented using a dedicatedelectronic circuit including an ASIC that is manufactured for aparticular operation, e.g., an ASIC for processing sensor data and/orcommunicating the sensor data. In some implementations, the processor ofa given ECU 112 can be implemented using an FPGA, which is an integratedcircuit manufactured to be configurable by an occupant. Typically, ahardware description language such as VHDL (Very High Speed IntegratedCircuit Hardware Description Language) is used in electronic designautomation to describe digital and mixed-signal systems such as FPGA andASIC. For example, an ASIC is manufactured based on VHDL programmingprovided pre-manufacturing, whereas logical components inside an FPGAmay be configured based on VHDL programming, e.g., stored in a memoryelectrically connected to the FPGA circuit. In some examples, acombination of general-purpose processor(s), ASIC(s), and/or FPGAcircuits may be included in a given ECU 112.

Vehicle network 132 is a network via which messages can be exchangedbetween various devices in vehicle 105. Computer 110 can be generallyprogrammed to send and/or receive, via vehicle network 132, messages toand/or from other devices in vehicle 105 (e.g., any or all of ECUs 112,sensors 115, actuators 120, components 125, communications module 130, ahuman machine interface (HMI), etc.). Additionally or alternatively,messages can be exchanged among various such other devices in vehicle105 via vehicle network 132. In cases in which computer 110 actuallycomprises a plurality of devices, vehicle network 132 may be used forcommunications between devices represented as computer 110 in thisdisclosure. Further, as mentioned below, various controllers and/orvehicle sensors 115 may provide data to the computer 110.

In some implementations, vehicle network 132 can be a network in whichmessages are conveyed via a vehicle communications bus. For example,vehicle network can include a controller area network (CAN) in whichmessages are conveyed via a CAN bus, or a local interconnect network(LIN) in which messages are conveyed via a LIN bus.

In some implementations, vehicle network 132 can include a network inwhich messages are conveyed using other wired communication technologiesand/or wireless communication technologies (e.g., Ethernet, WiFi,Bluetooth, etc.). Additional examples of protocols that may be used forcommunications over vehicle network 132 in some implementations include,without limitation, Media Oriented System Transport (MOST),Time-Triggered Protocol (TTP), and FlexRay.

In some implementations, vehicle network 132 can represent a combinationof multiple networks, possibly of different types, that supportcommunications among devices in vehicle 105. For example, vehiclenetwork 132 can include a CAN in which some devices in vehicle 105communicate via a CAN bus, and a wired or wireless local area network inwhich some device in vehicle 105 communicate according to Ethernet orWi-Fi communication protocols.

Vehicle sensors 115 may include a variety of devices such as are knownto provide data to the computer 110. For example, the vehicle sensors115 may include Light Detection and Ranging (lidar) sensor(s) 115, etc.,disposed on a top of the vehicle 105, behind a vehicle 105 frontwindshield, around the vehicle 105, etc., that provide relativelocations, sizes, and shapes of objects and/or conditions surroundingthe vehicle 105. As another example, one or more radar sensors 115 fixedto vehicle 105 bumpers may provide data to provide and range velocity ofobjects (possibly including second vehicles), etc., relative to thelocation of the vehicle 105. The vehicle sensors 115 may further includecamera sensor(s) 115, e.g., front view, side view, rear view, etc.,providing images from a field of view inside and/or outside the vehicle105.

Actuators 120 are implemented via circuitry, chips, motors, or otherelectronic and or mechanical components that can actuate various vehiclesubsystems in accordance with appropriate control signals as is known.The actuators 120 may be used to control components 125, includingbraking, acceleration, and steering of a vehicle 105.

In the context of the present disclosure, a vehicle component 125 is oneor more hardware components adapted to perform a mechanical orelectro-mechanical function or operation—such as moving the vehicle 105,slowing or stopping the vehicle 105, steering the vehicle 105, etc.Non-limiting examples of components 125 include a propulsion component(that includes, e.g., an internal combustion engine and/or an electricmotor, etc.), a transmission component, a steering component (e.g., thatmay include one or more of a steering wheel, a steering rack, etc.), abrake component (as described below), a park assist component, anadaptive cruise control component, an adaptive steering component, amovable seat, etc.

In addition, the computer 110 may be configured for communicating viacommunication module 130 with devices outside of the vehicle 105, e.g.,through vehicle-to-vehicle (V2V) or vehicle-to-infrastructure (V2I)wireless communications to another vehicle, to (typically via thenetwork 135) a remote server 145 (V2V and V2I may be collectivelyreferred to as V2X). The communications module 130 could include one ormore mechanisms by which the computer 110 may communicate, including anydesired combination of wireless (e.g., cellular, wireless, satellite,microwave and radio frequency) communication mechanisms and any desirednetwork topology (or topologies when a plurality of communicationmechanisms are utilized). Exemplary communications provided via thecommunications module 130 include cellular, Bluetooth®, IEEE 802.11,dedicated short range communications (DSRC), and/or wide area networks(WAN), including the Internet, providing data communication services.

The network 135 can be one or more of various wired or wirelesscommunication mechanisms, including any desired combination of wired(e.g., cable and fiber) and/or wireless (e.g., cellular, wireless,satellite, microwave, and radio frequency) communication mechanisms andany desired network topology (or topologies when multiple communicationmechanisms are utilized). Exemplary communication networks includewireless communication networks (e.g., using Bluetooth, Bluetooth LowEnergy (BLE), IEEE 802.11, vehicle-to-vehicle (V2V) and cellular V2V(CV2V), cellular V2I or V2X (CV2X), etc.), local area networks (LAN)and/or wide area networks (WAN), including the Internet, providing datacommunication services.

Computer 110 can receive and analyze data from sensors 115 substantiallycontinuously, periodically, and/or when instructed by a server 145, etc.Further, object classification or identification techniques can be used,e.g., in a computer 110 based on lidar sensor 115, camera sensor 115,etc., data, to identify a type of object, e.g., vehicle, person, rock,pothole, bicycle, motorcycle, etc., as well as physical features ofobjects.

FIG. 2 is a block diagram of an example server 145. The server 145includes a computer 235 and a communications module 240. The computer235 includes a processor and a memory. The memory includes one or moreforms of computer-readable media, and stores instructions executable bythe computer 235 for performing various operations, including asdisclosed herein. The communications module 240 can include conventionalmechanisms for wired and/or wireless communications, e.g., radiofrequency communications using suitable protocols, that allow computer235 to communicate with other devices, such as the vehicle 105, viawireless and or wired communication networks/links, e.g.

FIG. 3 is a diagram of an example traffic scene 300. In traffic scene300, while an adaptive cruise control feature of vehicle 105 is engaged,vehicle 105 travels a roadway 301. While engaged, the adaptive cruisecontrol feature of vehicle 105 can control vehicle propulsionpower/acceleration in order to maintain a set speed when possible, whilemonitoring the road in front of vehicle 105 in order to detect othervehicles that may be present. The adaptive cruise control feature canmonitor the road in front of vehicle 105 for the presence of othervehicle(s) based on sensor data provided by one or more sensors (e.g.,one or more sensors 115).

In some implementations, the adaptive cruise control feature of vehicle105 can use data provided by radar sensor(s) and camera(s) of vehicle105 in order to detect the presence of other vehicles on roadway 301. Insome implementations, using radar sensing data provided by radarsensor(s) of vehicle 105 (e.g., radar sensor(s) among sensors 115),radar-based object detection functionality of vehicle 105 (e.g.,radar-based object detection functionality provided by computer 110 oran ECU 112) can detect objects (such as other vehicles) within range ofthose radar sensor(s). In some implementations, using images captured bycamera(s) of vehicle 105 (e.g., camera(s) among sensors 115),image-based object detection functionality of vehicle 105 (e.g.,image-based object detection functionality provided by computer 110 oran ECU 112) can visually detect/recognize objects (such as othervehicles) within visual range of those camera(s).

When the adaptive cruise control feature detects the presence of avehicle in front of vehicle 105, it can, according to calculations thatwill be understood, determine whether vehicle 105, if it continues totravel at the set speed, will approach to within a specified minimumfollowing distance from the detected vehicle. If so, the adaptive cruisecontrol feature can temporarily reduce the speed of vehicle 105 belowthe set speed in order to prevent it from approaching any closer thanthe specified minimum following distance. In this context, the slowerthe speed of the leading vehicle in front of vehicle 105, the greaterwill be the extent to which the adaptive cruise control feature reducesthe speed of vehicle 105. If the leading vehicle slows to a stop, theadaptive cruise control feature will cause vehicle 105 to also slow to astop before it approaches closer than the specified minimum followingdistance.

In traffic scene 300, vehicle 105 travels roadway 301 with the adaptivecruise control feature engaged, and follows a vehicle 302. The adaptivecruise control feature controls engine power/acceleration at vehicle 105in order to maintain, between vehicle 105 and vehicle 302, a specifiedminimum following distance. This specified minimum following distancecan be a distance DF(s) that varies as a function of the speed ofvehicle 105 (e.g., increases as the speed of vehicle 105 increases),and/or could be specified by user input, for example. Upon reachingtraffic congestion 304 (e.g., a “traffic jam” consisting of stopped orslowly-moving vehicles), vehicle 302 may slow to a stop, and, in turn,the adaptive cruise control feature of vehicle 105 may cause vehicle 105to slow to a stop (e.g., preserving a distance D_(F)(0) between thefront of vehicle 105 and the back of vehicle 302).

Vehicle 105 can include an electrical energy source (such as a battery)and an electric motor that can be powered by the electrical energysource to generate propulsion for vehicle 105. Vehicle 105 can alsoinclude an internal combustion engine that also can generate propulsionfor vehicle 105. As vehicle 105 travels roadway 301, a power state ofthe engine can be controlled based on the power demands associated withpropulsion of vehicle 105.

Factors affecting the power demands associated with propulsion ofvehicle 105 can include route/surface metrics, such as road grade, roadcurvature, road surface friction (mu), rolling resistance, and roadwayenvironmental conditions (e.g., the presence of rain, ice or snow).Factors affecting the power demands associated with propulsion ofvehicle 105 can also include factors relating to vehicleload/configuration, such as vehicle weight, tire type, payload, towingof a trailer, and aerodynamic resistance (including the effects ofheadwinds or tailwinds, if present). Demands for propulsion power canalso be affected by maneuvers of vehicle 105 as it travels roadway 301,such as lane changes and accelerations/decelerations to target speed.

At times during which the power demands can be accommodated solely usingelectrical power provided by the electrical energy source, the enginecan be set to an ‘off’ power state. The engine can be set to an ‘on’power state at times during which the available electrical power isinsufficient to accommodate the power demands associated with vehiclepropulsion.

The propulsion (and associated power demands) commanded by the adaptivecruise control feature can vary as the adaptive cruise control featureaccelerates and decelerates vehicle 105 to adapt its speed as it travelsroadway 301. If a current power state of the engine is unsuitable inview of those power demands, an engine power state transition can beplanned (e.g., by computer 110 or an ECU 112) to transition the enginefrom its current power state to a different power state (“planned powerstate”). If the engine is on but is not needed to satisfy current powerdemands, the planned engine power state transition can be an enginepull-down, according to which the engine is transitioned to an ‘off’power state. If the engine is off but current power demands necessitatesourcing power from the engine, the planned engine power statetransition can be an engine pull-up, according to which the engine istransitioned to an ‘on’ power state.

In some cases, just as vehicle 105 is planning/executing an engine powerstate transition, conditions can change in a manner that renders thatengine power state transition undesirable or unnecessary. For instance,just as vehicle 105 plans an engine pull-down in response to reducedpower demand while vehicle 105 trails a slowly-moving vehicle, theslowly-moving vehicle may begin moving out of the travel lane of vehicle105.

In some implementations, vehicle 105 can implement an engine controlalgorithm designed to inhibit engine power state transitions that areundesirable or unnecessary. In some implementations, vehicle 105 canmonitor conditions of roadway 301 for condition changes that canpotentially render planned engine power state transitions undesirable orunnecessary. In some implementations, based on such monitoring, vehicle105 can identify an expected condition change. The expected conditionchange can be a condition change that appears likely to occur in view ofinformation and/or data obtained in conjunction with monitoringconditions of roadway 301. In some implementations, vehicle 105 canmonitor for condition changes by analyzing radar sensing data providedby radar sensor(s) of vehicle 105 and/or images captured by camera(s) ofvehicle 105.

In some implementations, vehicle 105 can identify an expected conditionchange corresponding to an expected movement out of a travel lane ofvehicle 105 on the part of a target vehicle of the adaptive cruisecontrol feature. For instance, in the context of the above example,vehicle 105 can identify an expected condition change corresponding toan expected movement out of the travel lane of vehicle 105 on the partof the slowly-moving vehicle.

In some implementations, vehicle 105 can identify an expected conditionchange corresponding to an expected movement into a travel lane of thevehicle by a target vehicle of the adaptive cruise control feature. Forinstance, vehicle 105 can identify an expected condition changecorresponding to an expected movement into the travel lane of vehicle105 on the part of a vehicle traveling in an adjacent lane.

In some implementations, vehicle 105 can identify an expected conditionchange corresponding to a change in speed limit. For instance, vehicle105 can determine that the speed limit of roadway 301 drops by 10 mph atan upcoming point along roadway 301. In some implementations, vehicle105 can identify an expected condition change corresponding to a changein speed limit based on electronic horizon data. Electronic horizon datais a collection of data as is known obtained via vehicle sensors and/orstored map data indicating a current position or location of the vehicle105 and predicting a future trajectory of the vehicle 105 with respectto an upcoming portion of roadway 301, e.g., including road geometry,topology, and attributes (e.g., lanes, speed limits, etc.). In anexample, based on electronic horizon data, vehicle 105 can determinethat the speed limit is 55 mph on a current road segment, but drops to35 mph at roadway segment located ten segments forward from the currentroad segment.

In some implementations, vehicle 105 can identify an expected conditionchange corresponding to a change in roadway curvature. For instance,while vehicle 105 travels a straight portion of roadway 301, vehicle 105can determine that it is approaching a curved portion of roadway 301. Insome implementations, vehicle 105 can identify an expected conditionchange corresponding to a change in roadway curvature based onelectronic horizon data. In an example, while traveling on a straightsegment of roadway 301, vehicle 105 can determine that a roadway segmentlocated ten segments forward has a curvature of radius 400 m.

In some implementations, having identified an expected condition change,vehicle 105 can determine a preferred power state for the engine basedon that expected condition change. The preferred power state can be apower state that is appropriate for the power demands expected to beobserved assuming that the expected condition change does in fact occur.For example, if the expected condition change corresponds to an expectedmovement of a slow-moving target vehicle from the travel lane of vehicle105 to an adjacent lane, the preferred power state can be a power statethat is appropriate for the power demands expected to be observed if theslow-moving target vehicle does actually move to the adjacent lane.

In some implementations, an engine controller of vehicle 105 may executeprogramming to plan engine power state transitions without reference toexpected condition changes that may be identified as vehicle 105 travelsalong roadway 301. Such a planned engine power state transition caninclude transitioning the engine from its current power state to aplanned power state. For example, the engine control logic may plan anengine pull-down or an engine pull-up without reference to any expectedcondition change that may have been identified.

In some implementations, an engine power state transition plannedwithout reference to an expected condition change can be resolved basedon a preferred power state determined based on the expected conditionchange. Resolving the planned engine power state transition can includeinhibiting the planned engine power state transition if the currentpower state matches the preferred power state (such that the currentpower state is expected to be appropriate), and executing the plannedengine power state transition if the current power state does not matchthe preferred power state and the planned power state matches thepreferred power state (such that the planned power state is expected tobe appropriate).

In an example, the engine control logic may plan an engine pull-downwhile vehicle 105 trails a slowly-moving target vehicle in the travellane of vehicle 105. Based on an expected movement of the slowly-movingtarget vehicle out of the travel lane and into an adjacent lane, it maybe determined that the engine should preferably remain in an ‘on’ powerstate. The engine pull-down may then be inhibited to prevent the enginefrom being transitioned to an ‘off’ power state.

In another example, the engine control logic may plan an engine pull-upwhile the travel lane in front of vehicle 105 is clear. Based on anexpected movement of a target vehicle into the travel lane in front ofvehicle 105, it may be determined that the engine should preferablyremain in an ‘off’ power state. The engine pull-up may then be inhibitedto prevent the engine from being transitioned to an ‘on’ power state.

In some implementations, vehicle 105 can take information regarding roadgrade/inclination into account in conjunction with controlling enginepower state transitions. In some implementations, vehicle 105 can obtaininformation regarding road grade/inclination from electronic horizondata provided by one or more data providers/services. In someimplementations, as it travels a given roadway (e.g., roadway 301),vehicle 105 can determine—e.g., based on electronic horizon data—whetherthe road grade will change at upcoming points along the roadway, and ifso, can take such change(s) into account. For instance, vehicle 105 mayinhibit a planned engine pull-up or initiate an engine pull-down based(and/or deceleration fuel shut off) on a determination that the roadgrade will change from a level grade to a downward grade at an upcomingpoint.

In some implementations, vehicle 105 can consider most-probable path(MPP) determinations in conjunction with controlling engine power statetransitions using information regarding road grade/inclination. Forexample, if an MPP determined for vehicle 105 involves a turn onto aroad with a steep upward or downward grade, vehicle 105 can initiate anengine pull-up or pull-down (and/or deceleration fuel shut off) inadvance of the turn.

FIG. 4 is a block diagram of a process flow 400, which may berepresentative of operations executed in various implementations. Asshown in process flow 400, conditions of a roadway can be monitored at402 as a vehicle travels the roadway while an adaptive cruise controlfeature of the vehicle is active. At 404, an expected condition changecan be identified based on the monitoring at 402. At 406, a preferredpower state for an engine of the vehicle can be determined based on theexpected condition change identified at 404. At 408, it can bedetermined that an engine power state transition is planned for theengine. At 410, the planned engine power state transition can beresolved based on the preferred power state determined at 406.

FIG. 5 is a block diagram of a process flow 500, which may berepresentative of operations executed in various implementations. Insome implementations, process flow 500 can be used to resolve theplanned engine power state transition at 410 in process flow 400 of FIG.4 . As shown in process flow 500, a determination can be made at 502 ofwhether the current power state matches the preferred power state. If itis determined at 502 that the current power state matches the preferredpower state, the engine power state transition can then be inhibited at504, after which the process flow can end. If it is determined at 502that the current power state does not match the preferred power state, adetermination can be made at 506 of whether the planned power statematches the preferred power state. If it is determined at 506 that theplanned power state does not match the preferred power state, theprocess flow can end. If it is determined at 506 that the planned powerstate matches the preferred power state, the engine power statetransition can then be executed at 508, after which the process flow canend.

FIG. 6 illustrates an example storage medium 600. Storage medium 600 maybe any non-transitory computer-readable storage medium ormachine-readable storage medium, such as an optical, magnetic orsemiconductor storage medium. In various implementations, storage medium600 may be an article of manufacture. In some implementations, storagemedium 600 may store computer-executable instructions, such ascomputer-executable instructions to implement one or both of processflows 400 and 500. Examples of a computer-readable storage medium ormachine-readable storage medium may include any tangible media capableof storing electronic data, including volatile memory or non-volatilememory, removable or non-removable memory, erasable or non-erasablememory, writeable or re-writeable memory, and so forth. Examples ofcomputer-executable instructions may include any suitable type of code,such as source code, compiled code, interpreted code, executable code,static code, dynamic code, object-oriented code, visual code, and thelike.

As used herein, the term “circuitry” may refer to, be part of, orinclude an Application Specific Integrated Circuit (ASIC), an electroniccircuit, a processor (shared, dedicated, or group), and/or memory(shared, dedicated, or group) that execute one or more software orfirmware programs, a combinational logic circuit, and/or other suitablehardware components that provide the described functionality. In someimplementations, the circuitry may be implemented in, or functionsassociated with the circuitry may be implemented by, one or moresoftware or firmware modules. In some implementations, circuitry mayinclude logic, at least partially operable in hardware.

In the drawings, the same reference numbers indicate the same elements.Further, some or all of these elements could be changed. With regard tothe media, processes, systems, methods, etc. described herein, it shouldbe understood that, although the steps of such processes, etc. have beendescribed as occurring according to a certain ordered sequence, suchprocesses could be practiced with the described steps performed in anorder other than the order described herein. It further should beunderstood that certain steps could be performed simultaneously, thatother steps could be added, or that certain steps described herein couldbe omitted. In other words, the descriptions of processes herein areprovided for the purpose of illustrating certain embodiments, and shouldin no way be construed so as to limit the claimed invention.

The disclosure has been described in an illustrative manner, and it isto be understood that the terminology which has been used is intended tobe in the nature of words of description rather than of limitation. Manymodifications and variations of the present disclosure are possible inlight of the above teachings, and the disclosure may be practicedotherwise than as specifically described. The present invention isintended to be limited only by the following claims.

What is claimed is:
 1. A system, comprising: a computer having aprocessor and a memory, the memory storing instructions executable bythe processor to: monitor conditions of a roadway as a vehicle travelsthe roadway while an adaptive cruise control feature of the vehicle isactive; identify an expected condition change based on the monitoringthe conditions of the roadway; determine a preferred power state for anengine of the vehicle based on the expected condition change; determinethat an engine power state transition is planned for the engine, theengine power state transition including transitioning the engine from acurrent power state to a planned power state; and resolve the enginepower state transition based on the preferred power state.
 2. The systemof claim 1, wherein the resolving the engine power state transitioncomprises inhibiting the engine power state transition when the currentpower state matches the preferred power state.
 3. The system of claim 1,wherein the resolving the engine power state transition comprisesexecuting the engine power state transition when the current power statedoes not match the preferred power state and the planned power statematches the preferred power state.
 4. The system of claim 1, wherein theexpected condition change corresponds to an expected movement out of atravel lane of the vehicle by a target vehicle of the adaptive cruisecontrol feature.
 5. The system of claim 1, wherein the expectedcondition change corresponds to an expected movement into a travel laneof the vehicle by a target vehicle of the adaptive cruise controlfeature.
 6. The system of claim 1, wherein the expected condition changecorresponds to a change in speed limit.
 7. The system of claim 1,wherein the expected condition change corresponds to a change in roadwaycurvature.
 8. The system of claim 1, wherein the current power state isan on state and the planned power state is an off state.
 9. The systemof claim 1, wherein the current power state is an off state and theplanned power state is an on state.
 10. The system of claim 1, thememory storing instructions executable by the processor to: determine apreferred fuel flow state for the engine based on the expected conditionchange; and resolve a planned fuel flow state transition based on thepreferred fuel flow state.
 11. A method, comprising: monitoringconditions of a roadway as a vehicle travels the roadway while anadaptive cruise control feature of the vehicle is active; identifying anexpected condition change based on the monitoring the conditions of theroadway; determining a preferred power state for an engine of thevehicle based on the expected condition change; determining that anengine power state transition is planned for the engine, the enginepower state transition including transitioning the engine from a currentpower state to a planned power state; and resolving the engine powerstate transition based on the preferred power state.
 12. The method ofclaim 11, wherein the resolving the engine power state transitioncomprises inhibiting the engine power state transition when the currentpower state matches the preferred power state.
 13. The method of claim11, wherein the resolving the engine power state transition comprisesexecuting the engine power state transition when the current power statedoes not match the preferred power state and the planned power statematches the preferred power state.
 14. The method of claim 11, whereinthe expected condition change corresponds to an expected movement out ofa travel lane of the vehicle by a target vehicle of the adaptive cruisecontrol feature.
 15. The method of claim 11, wherein the expectedcondition change corresponds to an expected movement into a travel laneof the vehicle by a target vehicle of the adaptive cruise controlfeature.
 16. The method of claim 11, wherein the expected conditionchange corresponds to a change in speed limit.
 17. The method of claim11, wherein the expected condition change corresponds to a change inroadway curvature.
 18. The method of claim 11, wherein the current powerstate is an on state and the planned power state is an off state. 19.The method of claim 11, wherein the current power state is an off stateand the planned power state is an on state.
 20. The method of claim 11,comprising: determining a preferred fuel flow state for the engine basedon the expected condition change; and resolving a planned fuel flowstate transition based on the preferred fuel flow state.